#ifndef __CONFIG_H__
#define __CONFIG_H__

#define TITLE "Plane War"
#define SCREEN_WIDTH 450
#define SCREEN_HEIGHT 700
#define GAME_FPS 60
#define IMG_FORMAT SDL_PIXELFORMAT_RGBA32

#define ALIVE_SCORE 10
#define ALIVE_SCORE_INTERVAL 1000
#define PLANE_DOWN_INTERVAL 100
#define PLANE_FIRE_INTERVAL 100
#define PLANE_ANIMATE_INTERVAL 50
#define BACKGROUND_SCROLL_SPEED 1

#define RAND_MOD 1E4
#define P_ENEMY0 0.025
#define P_ENEMY1 0.015
#define P_ENEMY2 0.002

#define BORDER_X 20
#define BORDER_Y 30
#define BORDER_TEXT 5

#define START 0
#define PLAYING 1
#define PAUSE 2
#define END 3
#define EXIT 4

#define TITLE_POSITION 210
#define INFO_POSITION 525
#define SCORE_POSITION 280
#define BEST_SCORE_POSITION 315

#define INFO_MAX_LEN 30
#define TITLE_FONT_SIZE 25
#define INFO_FONT_SIZE 17

#define INFO_LENGTH 110
#define SCORE_LENGTH 70
#define HP_LENGTH 80
#define TITLE_WELCOME_LENGTH 125
#define TITLE_PAUSE_LENGTH 40
#define TITLE_OVER_LENGTH 60

#define HERO_WIDTH 50
#define HERO_HEIGHT 62
#define HERO_SPEED 6
#define HERO_HP 100
#define HERO_HP_ALERT 30
#define HERO_INDEX_MAX 6
#define HERO_CHANGE_INTERVAL 250
#define HERO_FIRE_INTERVAL 100
#define HERO_BOMB_INIT_COUNT 3
#define HERO_INIT_POSITION 40

#define HERO_BULLET_ID 0
#define HERO_BULLET_WIDTH 5
#define HERO_BULLET_HEIGHT 10
#define HERO_BULLET_SPEED 10
#define HERO_BULLET_DAMAGE 100

#define ENEMY0_ID 0
#define ENEMY0_WIDTH 25
#define ENEMY0_HEIGHT 20
#define ENEMY0_SPEED 4
#define ENEMY0_HP 100
#define ENEMY0_SCORE 100
#define ENEMY0_APPEND_SCORE 30
#define ENEMY0_INDEX_MAX 5

#define ENEMY1_ID 1
#define ENEMY1_WIDTH 40
#define ENEMY1_HEIGHT 49
#define ENEMY1_SPEED 3
#define ENEMY1_HP 200
#define ENEMY1_SCORE 1000
#define ENEMY1_INDEX_HIT 1
#define ENEMY1_INDEX_MAX 6
#define ENEMY1_APPEND_SCORE 1000
#define ENEMY1_FIRE_INTERVAL 400

#define ENEMY1_BULLET_ID 1
#define ENEMY1_BULLET_WIDTH 5
#define ENEMY1_BULLET_HEIGHT 10
#define ENEMY1_BULLET_SPEED 7
#define ENEMY1_BULLET_DAMAGE 40

#define ENEMY2_ID 2
#define ENEMY2_WIDTH 83
#define ENEMY2_HEIGHT 128
#define ENEMY2_SPEED 2
#define ENEMY2_HP 1000
#define ENEMY2_SCORE 10000
#define ENEMY2_INDEX_HIT 2
#define ENEMY2_INDEX_MAX 9
#define ENEMY2_APPEND_SCORE 10000
#define ENEMY2_CHANGE_INTERVAL 200
#define ENEMY2_FIRE_INTERVAL 800

#define ENEMY2_BULLET_ID 2
#define ENEMY2_BULLET_WIDTH 20
#define ENEMY2_BULLET_HEIGHT 20
#define ENEMY2_BULLET_SPEED 15
#define ENEMY2_BULLET_DAMAGE 200

#define HERO_HIT_DIFF 0
#define ENEMY_HIT_DIFF 10
#define CRASH_DIFF 20

#define APPEARANCE1 0
#define APPEARANCE2 1

#define COLOR_BLACK { 0, 0, 0 }
#define COLOR_RED { 255, 0, 0 }
#endif